[PATCH 1/3] netfilter: nf_tables: do not allow SET_ID to refer to another table
authorThadeu Lima de Souza Cascardo <cascardo@canonical.com>
Tue, 26 Jul 2022 17:30:27 +0000 (14:30 -0300)
committerSalvatore Bonaccorso <carnil@debian.org>
Wed, 10 Aug 2022 18:11:48 +0000 (19:11 +0100)
commit6088a3cf6d94b7a513ed4d531173708a3d8bba7a
tree41f225fc76fb29dbfb0f1ed799105a545af07be7
parentb6044e229880a3751ab32dc0d25e7633da413ff6
[PATCH 1/3] netfilter: nf_tables: do not allow SET_ID to refer to another table

When doing lookups for sets on the same batch by using its ID, a set from a
different table can be used.

Then, when the table is removed, a reference to the set may be kept after
the set is freed, leading to a potential use-after-free.

When looking for sets by ID, use the table that was used for the lookup by
name, and only return sets belonging to that same table.

This fixes CVE-2022-2586, also reported as ZDI-CAN-17470.

Reported-by: Team Orca of Sea Security (@seasecresponse)
Fixes: 958bee14d071 ("netfilter: nf_tables: use new transaction infrastructure to handle sets")
Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com>
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name netfilter-nf_tables-do-not-allow-SET_ID-to-refer-to-.patch
net/netfilter/nf_tables_api.c